package com.shenghui.enterprise.base.service;
import com.shenghui.enterprise.base.entity.BaseDataDictionary;
import com.shenghui.enterprise.vo.Result;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;
import java.util.Map;

/**
 * @Description: 字典主表业务逻辑接口
 * @Author houjh
 * @Email: happyxiaohou@gmail.com
 * @Date: 2020-06-01
 * @Copyright (c) 2020-2022 云南昇晖科技有限公司
 */

public interface IBaseDataDictionaryService extends IService<BaseDataDictionary> {
    /**
     * 查询树形数据信息
     * @param params
     * @return
     */
    Object getDataDictionaryList(Map params);

    /**
     * 添加字典信息
     * @return
     */
    Result addDataDictionary(BaseDataDictionary basedataDictionary);

    /**
     * 删除数据字典信息
     * @param id
     * @return
     */
    Result deleteDataDictionary(String id);

    /**
     * 通过id查询字典信息
     * @param id
     * @return
     */
    Result getDataDictionaryById(String id);


    /**
     * 通过Code查询数据信息
     * @param iCode
     * @param pCode
     * @return
     */
    List<Map<String, Object>> getDicDetailByCode(String iCode, String pCode);

    /**
     * 根据Code查询字典
     * @param code
     * @return
     */
    List<Map> getAllDataListByCode(String code);

    /**
     * 根据Code查询字典
     * @param code
     * @return
     */
    Object getDataDictionaryDetailListByCode(String code);

    /**
     * 根据Code查询子集以及详情
     * @param code
     * @return
     */
    Result getDataDictionaryTreeListByCode(String code);
}
